#ifndef __SCNS_ST7789_H__
#define __SCNS_ST7789_H__

#include "ScnsConfig.h"

#if defined(SCNS_ST7789_ENABLE)&&SCNS_ST7789_ENABLE==1

#include "ScnsBspSt7789.h"

#include "ScnsYing.h"
#include "ScnsLcd.h"

typedef enum
{
    SCNS_ST7789_STATUS_OK=SCNS_YING_STATUS_OK,
    SCNS_ST7789_STATUS_BSP_FAILED=SCNS_YING_STATUS_BSP_FAILED,
    SCNS_ST7789_STATUS_FAILED=SCNS_YING_STATUS_FAILED,
    SCNS_ST7789_STATUS_TIME_OUT=SCNS_YING_STATUS_TIME_OUT,
}ScnsSt7789Status;

extern ScnsSt7789Status scnsSt7789Init(ScnsSt7789Enum stn);
extern void scnsSt7789WriteColorRGB565(ScnsSt7789Enum stn,uint16 color);
extern uint8 scnsSt7789Flush(ScnsSt7789Enum stn,Point plu,Point prd,ScnsLcdColor buf[],uint32 n,uint8 bufId);
extern uint8 scnsSt7789SetAddress(ScnsSt7789Enum stn,Point plu,Point prd);
extern Point scnsSt7789GetBorder(ScnsSt7789Enum stn);
extern void scnsSt7789SetBackgroundLight(ScnsSt7789Enum stn,ScnsLcdBackgroundLightStatus status);
#endif
#endif
